Angular 原理图中的 branchAndMerge 函数有什么作用?
What does branchAndMerge function in Angular schematics do?
我正在试验 Angular 原理图,并在多个地方遇到了函数 branchAndMerge()。然而,没有人解释它的作用。
看过的地方:
- Generating Custom Code With The Angular CLI And Schematics
- amcdnl/material-schematics
- 如何用angular原理图覆盖文件
- angular/devkit
澄清它与 merge/mergeWith 的不同之处,以及如何正确使用它,我们将不胜感激。
P.S:Merge在@angular-devkit/schematics解释如下:
Merge the input tree with the other Tree.
顺便说一句,我假设 merge() 现在是 mergeWith,尽管我对此不是 100% 确定。
代码示例
const rule =
// Creates a new rule that is a concatenation of other rules.
chain([
// Everyone uses it, but no one explains what it does...
branchAndMerge(
chain([
// Merges the project tree with the virtual tree
mergeWith(virtualTree)
]))
]);
下面的video给出了我迄今为止听到的最好的解释:
Branch from current tree, and the tree is a virtual file system based
off of your current directory
如果仔细研究 code in the repo,就会发现情况确实如此。我想这样做的好处是出于性能原因,它允许修改 key/values 而不是实际的硬盘。此外,我想它也简化了过程,因为它使位置无关紧要,这会使原理图的过程大大复杂化。
我正在试验 Angular 原理图,并在多个地方遇到了函数 branchAndMerge()。然而,没有人解释它的作用。
看过的地方:
- Generating Custom Code With The Angular CLI And Schematics
- amcdnl/material-schematics
- 如何用angular原理图覆盖文件
- angular/devkit
澄清它与 merge/mergeWith 的不同之处,以及如何正确使用它,我们将不胜感激。
P.S:Merge在@angular-devkit/schematics解释如下:
Merge the input tree with the other Tree.
顺便说一句,我假设 merge() 现在是 mergeWith,尽管我对此不是 100% 确定。
代码示例
const rule =
// Creates a new rule that is a concatenation of other rules.
chain([
// Everyone uses it, but no one explains what it does...
branchAndMerge(
chain([
// Merges the project tree with the virtual tree
mergeWith(virtualTree)
]))
]);
下面的video给出了我迄今为止听到的最好的解释:
Branch from current tree, and the tree is a virtual file system based off of your current directory
如果仔细研究 code in the repo,就会发现情况确实如此。我想这样做的好处是出于性能原因,它允许修改 key/values 而不是实际的硬盘。此外,我想它也简化了过程,因为它使位置无关紧要,这会使原理图的过程大大复杂化。